home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / draft-vaudreuil-smtp-binary-00.txt < prev    next >
Text File  |  1993-10-18  |  12KB  |  303 lines

  1.  
  2.      Network Working Group                         Greg Vaudreuil
  3.      Internet Draft                             Tigon Corporation
  4.      Expires: 4/18/94                            October 18, 1993
  5.  
  6.  
  7.                             SMTP Service Extensions
  8.                   for High Performance and Binary Transmission
  9.                              of Large MIME Messages
  10.                       <draft-vaudreuil-smtp-binary-00.txt>
  11.  
  12.      1.Status of this Memo
  13.  
  14.  
  15.      This document is an Internet Draft.  Internet Drafts are working
  16.      documents of the Internet Engineering Task Force (IETF), its Areas,
  17.      and its Working Groups.  Note that other groups may also distribute
  18.      working documents as Internet Drafts.
  19.  
  20.      Internet Drafts are valid for a maximum of six months and may be
  21.      updated, replaced, or obsoleted by other documents at any time.  It is
  22.      inappropriate to use Internet Drafts as reference material or to cite
  23.      them other than as a "work in progress".
  24.  
  25.  
  26.      2.Abstract
  27.  
  28.      This memo defines an extension to the SMTP service whereby an SMTP
  29.      client and server may negotiate the use of an alternate DATA command
  30.      "BDAT" for large potentially binary objects.  Further, this option
  31.      will signal the ability of the server SMTP receiver to accept the
  32.      streaming of all commands up to the data command.
  33.  
  34.      3.Introduction
  35.  
  36.      The MIME extensions to the Internet message protocol provide for the
  37.      transmission of many kinds of data which were previously unsupported
  38.      in Internet mail.  One expected result of the use of MIME is that SMTP
  39.      will be expected to carry very large mail messages, often into the
  40.      megabytes.  There is a need avoid the overhead of base64 and quoted-
  41.      printable encoding of binary objects sent using the MIME message
  42.      format over SMTP including the requirement that the message be scanned
  43.      for "CR LF . CR LF" sequences upon sending.
  44.  
  45.      A second source of inefficiency in the use of SMTP is the implicit
  46.      requirement to send the full SMTP command stream, including each RCPT
  47.      TO command sychronously, that is, to wait for a response to the
  48.      previous command before sending the next.  This stop and wait
  49.      interaction often adds minutes to the length of a SMTP session, partly
  50.      by requiring validation of addresses one at a time.
  51.  
  52.      This memo uses the mechanism defined in [4] to define extensions to
  53.      the SMTP service whereby a client ("sender-SMTP") may declare support
  54.      for the streaming SMTP implementation model and the BDAT command.
  55.  
  56.  
  57.      Internet Draft                               Expires 4/18/94
  58.  
  59.  
  60.      4.Framework for the High Performance Extensions
  61.  
  62.      The following service extension is hereby defined:
  63.  
  64.           1) The name of the service extension is "High Performance Binary"
  65.  
  66.           2) The EHLO keyword value associated with this extension is "HP-
  67.           BINARY"
  68.  
  69.           3) No parameter is used with the HP-BINARY keyword
  70.  
  71.           4) One additional parameter to the BODY keyword defined [5] for
  72.           the MAIL FROM command is defined, "BINARYMIME".  The value
  73.           "BINARYMIME" associated with this parameter indicates that this
  74.           message is a Binary MIME message (in strict compliance with [3])
  75.           with arbitrary octet content is being sent. The revised syntax of
  76.           the value is as follows, using the ABNF notation of [2]:
  77.  
  78.                body-value ::= "7BIT" / "8BITMIME" / "BINARYMIME"
  79.  
  80.           5) A new SMTP verb is defined "BDAT" as a replacement for the
  81.           "DATA" command of [1]
  82.  
  83.      5.The High Performance Binary service extension
  84.  
  85.      When a client SMTP wishes to submit (using the MAIL command) a content
  86.      body consisting of a MIME message containing arbitrary octet-aligned
  87.      material, it first issues the EHLO command to the server SMTP. If the
  88.      server SMTP responds with code 250 to the EHLO command, and the
  89.      response includes the EHLO keyword value HP-BINARY, then the server
  90.      SMTP is indicating that it supports the extended MAIL command and will
  91.      accept MIME messages containing arbitrary octet-aligned material.
  92.  
  93.      The extended MAIL command is issued by a client SMTP when it wishes to
  94.      transmit a content body consisting of a MIME message containing
  95.      arbitrary octet-aligned material. The syntax for this command is
  96.      identical to the MAIL command in [1], except that a BODY parameter
  97.      must appear after the address.
  98.  
  99.      The complete syntax of this extended command is defined in [4]. The
  100.      ESMTP-keyword is BODY and the syntax for ESMTP-value is given by the
  101.      syntax for body-value shown above. A server which supports the HP-
  102.      BINARY transport service extension shall preserve all bits in each
  103.      octet passed using the DATA command.
  104.  
  105.      After receiving the 250 response to the EHLO command with the HP-
  106.      BINARY keyword, the MAIL FROM and RCPT TO commands can optionally be
  107.      sent as a block.  If the MAIL FROM address is invalid or otherwise
  108.      unavailable, the following RCPT TO commands should be answered with
  109.      the 503 command out of sequence error.
  110.  
  111.           Note: While SMTP does not explicitly require the stop and wait
  112.           behavior, and while the protocol as defined will work in a
  113.           streaming model, the examples have led implementors to build SMTP
  114.  
  115.  
  116.      Vaudreuil                                           [Page 2]
  117.  
  118.  
  119.      Internet Draft                               Expires 4/18/94
  120.  
  121.  
  122.           servers in such a manner as to require this behavior.  This
  123.           service extension recognizes the desire to use a streaming
  124.           implementation model and explicitly encourages its use.
  125.  
  126.      After all MAIL FROM and RCPT TO responses are collected and processed,
  127.      the BDAT command is sent.  The BDAT command is a replacement for the
  128.      DATA command.  The BDAT command takes one argument, the exact length
  129.      of the sent message in octets.  After receiving the 354 reply code,
  130.      the message data is sent as a octet stream.  Once the receiver-SMTP
  131.      receives the specified number of octets, it will return a 250 reply
  132.      code.
  133.  
  134.           Note: The local storage size of a message may not accurately
  135.           reflect the actual size of the message sent due to local storage
  136.           conventions.  In particular, text messages sent with the BDAT
  137.           command must be sent in the canonical CR LF terminated line
  138.           format.
  139.  
  140.      If a server SMTP does not support the HP-BINARY transport extension
  141.      (either by not responding with code 250 to the EHLO command, or by not
  142.      including the EHLO keyword value HP-BINARY in its response), then the
  143.      client SMTP must not, under any circumstances, send binary data using
  144.      the DATA command.
  145.  
  146.      If the receiver-SMTP does not support HP-BINARY and the message
  147.      content is a MIME object with a binary encoding, a client SMTP has two
  148.      options in this case: first,  it may implement a gateway
  149.      transformation to convert the message into valid 7bit encoded MIME, or
  150.      second, it may treat this as a permanent error and handle it in the
  151.      usual manner for delivery failures.  The specifics of the
  152.      transformation from Binary MIME to 7bit MIME are not described by this
  153.      RFC; the conversion is nevertheless constrained in the following ways:
  154.  
  155.           (1) it must cause no loss of information; MIME transport
  156.           encodings must be employed as needed to insure this is the case,
  157.           and
  158.  
  159.           (2) the resulting message must be valid 7bit MIME.
  160.  
  161.      As of present there are no mechanisms for converting a binary MIME
  162.      object into a 8bit-MIME object.  Such a transformation will require
  163.      the specification of a new MIME content-transfer-encoding, the
  164.      standardization of which is discouraged.
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.      Vaudreuil                                           [Page 3]
  179.  
  180.  
  181.      Internet Draft                               Expires 4/18/94
  182.  
  183.  
  184.      6.Usage Examples
  185.  
  186.      The following dialogue illustrates the use of the High Performance and
  187.      Binary service extension to send a BINARY object to three recipients
  188.      without the stop and wait for an explicit 250 for each recipient:
  189.  
  190.           S: <wait for connection on TCP port 25>
  191.           C: <open connection to server>
  192.           S: 220 cnri.reston.va.us SMTP service ready
  193.           C: EHLO ymir.claremont.edu
  194.           S: 250-cnri.reston.va.us says hello
  195.           S: 250 8BITMIME
  196.           S: 250 HP-BINARY
  197.           C: MAIL FROM:<ned@ymir.claremont.edu> BINARYMIME
  198.           S: 250 <ned@ymir.claremont.edu>... Sender and BINARYMIME ok
  199.           C: RCPT TO:<vcerf@cnri.reston.va.us>
  200.           C: RCPT TO:<gvaudre@cnri.reston.va.us>
  201.           C: RCPT TO:<jstewart@cnri.reston.va.us>
  202.           S: 250 <vcerf@cnri.reston.va.us>... Recipient ok
  203.           S: 250 <gvaudre@cnri.reston.va.us>... Recipient ok
  204.           S: 250 <jstewart@cnri.reston.va.us>... Recipient ok
  205.           C: BDAT 1324
  206.           S: 354 Send BINARYMIME message of 1324 Octets.
  207.           ...
  208.           S: 250 OK
  209.           C: QUIT
  210.           S: 250 Goodbye
  211.  
  212.  
  213.      The following dialogue illustrates the use of the High Performance and
  214.      Binary service extension to send a large 7 bit plain text object to
  215.      one recipient without the dot-stuffing overhead of the DATA command:
  216.  
  217.           S: <wait for connection on TCP port 25>
  218.           C: <open connection to server>
  219.           S: 220 cnri.reston.va.us SMTP service ready
  220.           C: EHLO ymir.claremont.edu
  221.           S: 250-cnri.reston.va.us says hello
  222.           S: 250 8BITMIME
  223.           S: 250 HP-BINARY
  224.           C: MAIL FROM:<ned@ymir.claremont.edu> BODY=7BIT
  225.           S: 250 <ned@ymir.claremont.edu>... Sender and 7BIT
  226.           C: RCPT TO:<vcerf@cnri.reston.va.us>
  227.           S: 250 <vcerf@cnri.reston.va.us>... Recipient ok
  228.           C: BDAT 1324
  229.           S: 354 Send 7BIT message of 78324 Octets.
  230.           ...
  231.           S: 250 OK
  232.           C: QUIT
  233.           S: 250 Goodbye
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.      Vaudreuil                                           [Page 4]
  241.  
  242.  
  243.      Internet Draft                               Expires 4/18/94
  244.  
  245.  
  246.  
  247.      7.Security Considerations
  248.  
  249.      This RFC does not discuss security issues and is not believed to raise
  250.      any security issues not already endemic in electronic mail and present
  251.      in fully conforming implementations of [1].
  252.  
  253.      8.Acknowledgements
  254.  
  255.      This document is the result of numerous discussions in the IETF SMTP
  256.      Extensions Working Group and in particular due to the continued
  257.      advocacy of "chunking" by Neil Katin.  Text for this document was
  258.      liberally copied from RFC 1426 by John Klensin, Marshall Rose, Ned
  259.      Freed, Dave Crocker, and Einar Stefferud.
  260.  
  261.      9.References
  262.  
  263.  
  264.           [1] Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC 821,
  265.           USC/Information Sciences Institute, August 1982.
  266.  
  267.           [2] Crocker, D., "Standard for the Format of ARPA Internet Text
  268.           Messages", STD 11, RFC 822, UDEL, August 1982.
  269.  
  270.           [3] Borenstein, N., and N. Freed, "Multipurpose Internet Mail
  271.           Extensions", RFC 1341, Bellcore, Innosoft, June 1992.
  272.  
  273.           [4] Klensin, J., WG Chair, Freed, N., Editor, Rose, M.,
  274.           Stefferud, E., and D. Crocker, "SMTP Service Extensions" RFC
  275.           1425,
  276.  
  277.           [5] Klensin, J., WG Chair, Freed, N., Editor, Rose, M.,
  278.           Stefferud, E., and D. Crocker, "SMTP Service Extension for 8bit-
  279.           MIMEtransport" RFC 1426, United Nations University, Innosoft
  280.           International, Inc., Dover Beach Consulting, Inc., Network
  281.           Management Associates, Inc., The Branch Office, February 1993.
  282.  
  283.  
  284.      10.  Author's Address
  285.  
  286.      Gregory M. Vaudreuil
  287.      The Tigon Corporation
  288.      17080 Dallas Parkway
  289.      Dallas, TX 75248-1905
  290.      214-733-2722
  291.      Gvaudre@cnri.reston.va.us
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.      Vaudreuil                                           [Page 5]
  303.